package com.intelligentcar.springboot.service.serverImpl;

import com.intelligentcar.springboot.bean.Parameter;
import com.intelligentcar.springboot.bean.User;
import com.intelligentcar.springboot.mapper.UserMapper;
import com.intelligentcar.springboot.service.UserServer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Service
public class UserServerImpl implements UserServer {
    @Autowired
    private UserMapper userMapper;

    @Override
    public Map<String,Object> userTable(User user) {
        user.setPage((user.getPage()-1) * user.getLimit());
        Map<String,Object> map = new HashMap<>();
        map.put("userList",userMapper.userTable(user));
        map.put("count",userMapper.selectPageCount());
        return map;
    }

//    @Override
//    public boolean updateUser(User user) {
//        int i = userMapper.updateUser(user);
//        if (i>0) {
//            return true;
//        }else {
//            return false;
//        }
//    }

    @Override
    public boolean updateUserState(User user) {
        int i = userMapper.updateUserState(user);
        if (i > 0) {
            return true;
        }else {
            return false;
        }
    }

//    @Override
//    public boolean insertUser(User user) {
//        String time =new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss").format(new Date());
//        user.setAddTime(time);
//        int i = userMapper.insertUser(user);
//        if (i > 0) {
//            return true;
//        }else {
//            return false;
//        }
//    }

    @Override
    public Map<String, Object> selectUser(User user) {
        user.setPage((user.getPage()-1) * user.getLimit());
        if (user.getUname() != "" && user.getUname() != null){
            user.setUname("%"+user.getUname()+"%");
        }
        Map<String,Object> map = new HashMap<>();
        List<User> list = userMapper.selectUser(user);
        map.put("userList",list);
        map.put("count",userMapper.selectedPageCount(user));
        return map;
    }

    @Override
    public boolean resetPwd(User user) {
        User user1 = userMapper.selectResetPwd();
        user.setUpwd(user1.getUpwd());
        int i = userMapper.resetPwd(user);
        if (i>0){
            return true;
        }
        return false;
    }

}
